Page History: Security Definition Request
Compare Page Revisions
Page Revision: 2012/10/15 11:26
Definition of SecuritiesThe T4 FIX API provides a mechanism to list the securities available for trading and market data streaming. For outrights, spreads, options and multilegged strategies, the result sets contain information about Exchange identifier, Contract identifier, Market identifier, symbology, pricing, minimum trading volumes, minimum price amount (including Variable Tick Tables), quantity leg ratios, buy/sell sides, put/call type, strikes, etx. The Security Definition Request message (Tag 35=c) provides the conerstone to interrogate T4 for the available exchanges, contract within each exchange and markets for a specific contract. In all cases, the Security Request Type (Tag 321) is set to request list of Securities (Tag 321=3). The combinations of Security Type (Tag 167), Security Exchange (Tag 207), Symbol (55) and SecurityID (TAg 48) determines the set of data returned by the FIX API.
Under the FIX T4 API, securities are defined by the Exchange, contracts within an exchange and markets for a specific contract (Tag 48). Exchanges are identified by an unique Exchange ID in Tag 207 (SecurityExchange). Contracts are characterized by its Contract ID in Tag 55 (Symbol). Markets are identified by an unique Market ID by Tag 48 (SecurityID).
The Security definition message capabilities cover the following uses:
1.
List Exchanges (Get Exchange IDs): SecurityType (Tag 167) only needs to be specified as input. This request returns all Exchange IDs in the SecurityExchange (Tag 207) with a corresponding description.
2.
List Contracts within an Exchange (Get Contract IDs). SecurityType (Tag 167) needs to be specified as input. SecurityExchange (Tag 207) must also contain the exchange name for which the contract list is requested. This request returns all Contract IDs in the Symbol (Tag 55) with a contract description (in the SecurityDesc Tag=107).
3.
List Markets of a Specific Contract (Get Market IDs). SecurityType (Tag 167) needs to be specified as input. SecurityExchange (Tag 207) and Symbol (Tag 55) must also be provided to determine the contract for which the market list is requested. Among other market descriptive parameters, the Market ID is returned in the SecurityID (Tag 48).
4.
List a Specific Market (Get Market ID). To request information about specific market the Get Market IDs request (just above) is augmented to also include the Market ID (via Tag 48) of the specific security. That is, to pinpoint the market in the request, the input parameters will include Security Type (Tag 167), SecurityExchange (Tag 207), Symbol (Tag 55) and SecurityID (Tag 48). The descriptive parameters for this specific Market ID are returned with this request.
Message Dictionary
Tag Field Name Req'd Comments
Standard Header Y MsgType = c (lowercase)
320 SecurityReqID Y
321 SecurityRequestType Y
component block
N Insert here the set of "Instrument" (symbology) fields defined in "COMMON COMPONENTS OF APPLICATION MESSAGES"
of the requested Security
component block N Insert here the set of "InstrumentExtension" fields defined in "COMMON COMPONENTS OF APPLICATION MESSAGES"
711 NoUnderlyings N Number of underlyings
component block N Must be provided if Number of underlyings > 0
15 Currency N
58 Text N Comment, instructions, or other identifying information.
354 EncodedTextLen N Must be set if EncodedText field is specified and must immediately precede it.
355 EncodedText N Encoded (non-ASCII characters) representation of the Text field in the encoded format specified via the MessageEncoding field.
336 TradingSessionID N Optional Trading Session Identifier to specify a particular trading session for which you want to obtain a list of securities that are tradeable.
625 TradingSessionSubID N
555 NoLegs N Number of legs that make up the Security
component block N Insert here the set of "InstrumentLeg" (leg-specific symbology) fields defined in "COMMON COMPONENTS OF APPLICATION MESSAGES"
Required if NoLegs > 0.
827 ExpirationCycle N
263 SubscriptionRequestType N Subscribe or unsubscribe for security status to security specified in request.
Standard Trailer Y
Tag | Field Name | Req'd | Comments |
---|
| Standard Header | Y | MsgType = V |
262 | SecurityReqID|| Y | Must be unique to distinguish security definition requests |
263 | SubscriptionRequestType | Y | SubcriptionRequestType indicates to the other party what type of response is expected. A snapshot request only asks for current information. A subscribe request asks for updates as the status changes. Unsubscribe will cancel any future update messages from the counter party. The permissible values are: |
| | | 0 = SnapShot |
| | | 1 = Enable Snapshot + Updates (SUBSCRIBE) |
| | | 2 = Disable previous Snapshot + Update Request (UNSUBSCRIBE) |
264 | MarketDepth | Y | Requested Depth of market for Subscription or Snapshot. T4 currently supports up to a maximum of 10 levels for selected markets. TopOfBookOnly = 1. FullBook = 10. |
265 | MDUpdateType | N | Specifies the type of Market Data throughput (buffering). The permissible values are: |
| | | 0 = Full Refresh. Equivalent to T4 Smart. |
| | | 1 = Incremental Refresh. Equivalent to T4 Smart. |
| | | 2 = T4 Slow Trade |
| | | 3 = T4 Smart Trade |
| | | 4 = T4 Slow Smart |
| | | 5 = T4 Smart |
| | | 6 = T4 Fast Smart |
| | | 7 = T4 All |
| | | 8 = T4 Fast Trade |
| | | 9 = T4 Trade Only |
| Start Repeating Group | |
267 | NoMDEntryTypes | Y | Number of MDEntryType fields requested. Repeating Group. |
269 | MDEntryType | Y | Entry Type. Must be the first field in this repeating group. This is a list of interested Market Data Entries. The permissible values can be: |
| | | 0 = Bid |
| | | 1 = Offer |
| | | 2 = Implied Bid |
| | | 3 = Implied Offer |
| | | 4 = Last Trade |
| | | 6 = Settlement |
| | | 7 = Session High |
| | | 8 = Session Low |
| | | K = Price High Limit |
| | | L = Price Low Limit |
| | | B = Trade Volume |
| End Repeating Group | |
| Start Repeating Group | |
146 | NoRelatedSym | Y | Number of symbols (instruments) requested. Repeating Group. |
207 | SecurityExchange | Y | Can be used to identify the security. This is the T4 Exchange ID. |
55 | Symbol | Y | Symbol. Must be the first field in this repeating group. This is the T4 Contract ID. |
48 | SecurityID | Y | Security identifier. This is the T4 Market ID. |
167 | SecurityType | Y | Instrument type. Futures="FUT", Options="OPT", Stock="STK", Synthetic="SYN", Binary Option="BIN" |
201 | PutOrCall | N | For Options. Indicates whether an Option is for a put or call. Put = 0. Call = 1. |
| End Repeating Group | |
1070 | QuoteType | N | Pricing Scheme for Quotes. Ticks = 1, Decimal = 2. |
| Standard Trailer | Y |
Sample Messages
Requesting all exchanges
>> 9/28/2012 3:41:16 PM [FIXSECURITYDEFINITIONREQUEST] 34=5|49=T4Test|56=test|52=20120928-20:41:16.125|320=sc-9/28/2012 3:41:16 PM|321=3|167=FUT|
[FIXSECURITYDEFINITIONREQUEST]
[MsgSeqNum] 34 = 5
[SenderCompID] 49 = T4Test
[TargetCompID] 56 = test
[SendingTime] 52 = 20120928-20:41:16.125
[SecurityReqID] 320 = sc-9/28/2012 3:41:16 PM
[SecurityRequestType] 321 = 3 (REQUEST_LIST_SECURITIES)
[SecurityType] 167 = FUT (FUTURE)
Requesting all contracts for a specific exchange
>> 9/28/2012 3:40:14 PM [FIXSECURITYDEFINITIONREQUEST] 34=2|49=T4Test|56=test|52=20120928-20:40:14.707|320=sc-9/28/2012 3:40:14 PM|321=3|167=FUT|207=D_F|
[FIXSECURITYDEFINITIONREQUEST]
[MsgSeqNum] 34 = 2
[SenderCompID] 49 = T4Test
[TargetCompID] 56 = test
[SendingTime] 52 = 20120928-20:40:14.707
[SecurityReqID] 320 = sc-9/28/2012 3:40:14 PM
[SecurityRequestType] 321 = 3 (REQUEST_LIST_SECURITIES)
[SecurityType] 167 = FUT (FUTURE)
[SecurityExchange] 207 = D_F
Requesting all markets for a specific contract
>> 9/28/2012 3:42:17 PM [FIXSECURITYDEFINITIONREQUEST] 34=7|49=T4Test|56=test|52=20120928-20:42:17.495|320=sc-9/28/2012 3:42:17 PM|321=3|55=F|167=FUT|207=D_F|
[FIXSECURITYDEFINITIONREQUEST]
[MsgSeqNum] 34 = 7
[SenderCompID] 49 = T4Test
[TargetCompID] 56 = test
[SendingTime] 52 = 20120928-20:42:17.495
[SecurityReqID] 320 = sc-9/28/2012 3:42:17 PM
[SecurityRequestType] 321 = 3 (REQUEST_LIST_SECURITIES)
[Symbol] 55 = F
[SecurityType] 167 = FUT (FUTURE)
[SecurityExchange] 207 = D_F
Requesting a specific market
>> 9/28/2012 3:39:04 PM [FIXSECURITYDEFINITIONREQUEST] 34=9|49=T4Test|56=test|52=20120928-20:39:04.757|320=sc-9/28/2012 3:39:04 PM|321=3|55=F|167=FUT|207=D_F|48=D_F_F_20120900|
[FIXSECURITYDEFINITIONREQUEST]
[MsgSeqNum] 34 = 9
[SenderCompID] 49 = T4Test
[TargetCompID] 56 = test
[SendingTime] 52 = 20120928-20:39:04.757
[SecurityReqID] 320 = sc-9/28/2012 3:39:04 PM
[SecurityRequestType] 321 = 3 (REQUEST_LIST_SECURITIES)
[Symbol] 55 = F
[SecurityType] 167 = FUT (FUTURE)
[SecurityExchange] 207 = D_F
[SecurityID] 48 = D_F_F_20120900
FIX API Home Page.